// 全局扩展
var globalExtend = function() {
	// 扩展系统全局对象
	$.extend(sysGlobal, {
		// 请求类型
		RequestType : [
			{value : 1, text : '主动'},
			{value : 2, text : '被动'}
		], 
		// 返回结果
		ReturnResult : [
			{value : true, text : '成功'},
			{value : false, text : '失败'}
		], 
		// 功能类型
		FuncType: [
			{text: '模块', value: '1'},
			{text: '节点', value: '2'},
			{text: '按钮', value: '3'}
		], 
		// 通知类型
		NotifyType : [
			{text: '请选择', value: '-1'},
			{text: '验证码', value: '1'}
		], 
		// 是或否
		YesOrNo: [
			{text: '是', value: '1'},
		    {text: '否', value: '0'}
	    ], 
	    // 企业查询实体状态
	    EntityStateForEntQuery : [
	    	{value : 4, text : '申请'},
	    	{value : 5, text : '待审'},
	    	{value : 6, text : '在业'}
	    ], 
	    // 订单查询实体状态
	    EntityStateForOrderQuery : [
	    	{value : 8, text : '待发货'},
	    	{value : 9, text : '待收货'},
	    	{value : 10, text : '已完成'}
	    ]
	});
}();

//PC端全局对象
var pcGlobal = {
	sendRequest : function(url, data, success, error) {	//发送请求
		$.ajax({
			url : url,
			data : data,
			success : function(data, status) {
				//请求成功处理
				if (success) success.call(pcGlobal, data, status);
				else {
					if (data.status) search.info({content : "操作成功！"});
					else search.warn({content : "操作失败！"});
				}
			},
			error : function(xhr, msg, e) {
				//请求错误处理
				if (error) error.call(pcGlobal, xhr, msg, e);
				else search.error({content : "网络请求错误！"});
			}
		});
	}
};

//公共工具包
var CommonUtil = {
	/**
	 * 获取枚举文本值
	 * @param value 枚举值
	 * @param enums 枚举；字符串类型，在全局配置中获取枚举；数组类型，直接使用
	 */
	getEnumText : function(value, enums) {
		var globalenum = null;
		// 获取枚举对象
		if (Array.isArray(enums)) {
			globalenum = enums;
		} else if (typeof(enums) == 'string') {
			globalenum = sysGlobal[enums];
		} else {
			return null;
		}
		// 检查空枚举
		if (!globalenum || !Array.isArray(globalenum) || globalenum.length <= 0) {
			return null;
		}
		// 获取文本值
		var enumtext = null;
		$.each(globalenum, function() {
			if (value == this.value) {
				enumtext = this.text;
				return false;
			}
		})
		return enumtext;
	},
	/**
	 * URL添加参数
	 * @param url 地址
	 * @param params 参数集
	 * @return 组合后的地址
	 */
	urlHandler : function(url, params) {
		if (!url || !params) {
			return url;
		}
		var paramsArr = new Array();
		for (var key in params) {
			paramsArr.push(key + '=' + encodeURI(params[key]));
		}
		if (!url.startWith('/')) {
			url = ('/' + url);
		}
		return url + ((url.indexOf('?') != -1 ? '&' : '?') + paramsArr.join('&'));
	}
};
